1. Field
Embodiments of the invention relate to monitoring of performance parameters. More specifically, embodiments of the invention relate to monitoring performance parameters of a data flow path in a multi-level client server environment.
2. Background
Most existing operating systems provide a task manager. The task manager is basically a program or utility used to provide a user information about programs running on the computer. It can be used to display various common performance measures for processes operating on the computer. For example, a task manager may provide metrics for central processing unit (CPU) and memory usage, such as total number of handles, threads and processes running on the computer and the number of kilobytes of physical, kernel, and commit memory used. The task manager may also provide some information about networking performance. Some task managers provide a graphical representation such as a simple qualitative indicator that shows status of the networks on the computer. The representation may provide an indication of network traffic for the connections on a local computer and provide quick reference for determining an amount of network bandwidth consumed. Moreover, where multiple network connections exist, it allows comparison of traffic for each connection. However, the granularity at which task managers commonly provide such performance parameters is relatively coarse. For example, traffic is often determined over an interval of a second or more.
In some cases, the task manager may not provide access to all desired performance parameters. In other cases, the granularity provided by the task manager may be insufficient. For example, the in some client server environments it is desirable to monitor network operations at millisecond granularity. This level of granularity is not provided by existing task managers.